package org.reference.generic;

import java.util.ArrayList;

import org.junit.Assert;
import org.junit.Test;
import org.reference.generic.base.Parameter;
import org.reference.generic.information.Gene;
import org.reference.generic.work.Job;
import org.reference.generic.work.MachineManager;
import org.reference.generic.work.Schedule;
import org.reference.generic.work.ScheduleManager;

public class Main {
	public static void main(String[] args) {

	
		
	Parameter[] params = {
			new Parameter(Parameter.TYPE_GENERATION, String.valueOf(3)),
			new Parameter(Parameter.TYPE_MACHINE_NUMBER, String.valueOf(3)),
			new Parameter(Parameter.TYPE_REFERENCE_CMAX, String.valueOf(10)),
			new Parameter(Parameter.TYPE_MAX_DEPTH, String.valueOf(2)),
			new Parameter(Parameter.TYPE_ARITY, String.valueOf(2)),
			new Parameter(Parameter.TYPE_JOB_NUMBER, String.valueOf(10)),
			new Parameter(Parameter.TYPE_GENE_POPULATION, String.valueOf(10)),
			new Parameter(Parameter.TYPE_DEPTH, String.valueOf(0))
		};
	
	  
	  
//	  ArrayList<Job> jobList = new ArrayList <Job>();
//	  
//	  for(int i=0; i<10 ; i++){    //JOB 생성 메인에서...
//		  	Job job = new Job();
//		  	job.setProcessingTime((long)Math.random());
//		  	jobList.add(job);
//	  }
	
	  ProcessManager pm = new ProcessManager();
	  
	  pm.init(params);
	  
	  //ScheduleManager sm = new ScheduleManager();
	  
	  
	  
	  
	
	}
	
//	@Test
//	public void testName() throws Exception {
//		Node root = NodeFactory.getRandomNode(3, 0, 2);
//		((Function) root).operation();
//		System.out.println(root.getResult());
//	}
	
	
	
	
}
